package net.qhzw.vip.qiyu.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import net.qhzw.vip.qiyu.entity.SysRole;
import net.qhzw.vip.qiyu.model.AddRoleForm;
import net.qhzw.vip.qiyu.model.RoleMenuVo;

import java.util.Map;

public interface SysRoleService extends IService<SysRole> {


    boolean isSuperAdmin(Long userId);

    Map<String, Object> findByPage(Page<SysRole> page, Long shopId, String name);


    /***
     * 新增角色
     * @param roleForm
     * @return
     */
    boolean addSysRole(Long shopId, AddRoleForm roleForm);


    /***
     * 修改角色
     * @param roleForm
     * @return
     */
    boolean updateRoleById(AddRoleForm roleForm);


    /***
     * 查询角色下的菜单
     * @param id
     * @return
     */
    RoleMenuVo getSysRole(Long id);


    /***
     * 根据角色id查询角色名称
     * @param roleId
     * @return
     */
    String getRoleNameById(Long roleId);

    /***
     * 根据userId查询角色code
     * @param userId
     * @return
     */
    String getRoleCodeByUserId(Long userId);


    /**
     * 根据userId查询角色信息
     *
     * @param userId
     * @return
     */
    SysRole getRoleByUserId(Long userId);
}
